草庐IT

HTML5 Canvas 或 SVG 世界地图

全部标签

javascript - 如何添加点击并拖动以缩放 SVG 中的图像?

我想让访问者使用点击和拖动来缩放图像:是否有可以帮助我的JavaScript库?我注意到Raphaelhasclickanddrag方法,但我仍然需要编写大量JS来:找到图像的Angular使Angular落附近的区域可选为Angular绘制图标,使其明显可见在Angular落添加点击、拖放更新图片的尺寸我可以做到所有这些,但听起来很费时。有没有我应该使用的开源脚本?其他建议? 最佳答案 我在这篇文章中找到了这个解决方案:DraggablesandResizablesinSVG.在答案中,您可以找到一个jsfiddle链接:http

javascript - SVG - 如何将 <path> 切成两半?

我需要在javascript中的特定点切割现有路径(曲线)。例如,如果我有以下路径:据此,我可以这样得到中点:varline=document.getElementById("line_test");varlength=line.getTotalLength();varmidpoint=line.getPointAtLength(length/2);一旦我得到那个中点,我想完全删除路径的其余部分。有没有一个函数可以让我得到一个子路径?绘图库对我来说不是一个真正的选择。 最佳答案 是的,它叫做getPathSegAtLength(在路

javascript - jQuery.data 和动态变化的 HTML5 自定义属性

问题:jQuery对象html5自定义属性数据正在被缓存。在我的应用程序中,我有一个带有字段的表单,该字段具有不断变化的自定义数据属性,并且此特定行为对于表单的功能是必不可少的。我们这里有:有一个带有一些默认自定义属性的输入字段:获取自定义属性对于$('input').data(),结果将是{test="4"}更改自定义属性$('input').attr('data-test','5')再次获取自定义属性对于$('input').data(),结果将STILL{test="4"}问题如何使用$.data()函数始终确保获得所有真正的自定义属性,一个元素上可以有多个?我在每次获取之前尝试

javascript - 替换字符串中的单词,但忽略 HTML

我正在尝试编写一个突出显示插件,并希望保留HTML格式。使用javascript进行替换时是否可以忽略字符串中之间的所有字符?以下面为例:varstring="Loremipsumdolorspansitamet,consectetuerdoloradipiscingelit.";我希望能够实现以下目标(将“dolor”替换为“FOO”):varstring="LoremipsumFOOspansitamet,consectetuerFOOadipiscingelit.";或者甚至是这样(将“span”替换为“BAR”):varstring="LoremipsumdolorBARsit

javascript - 谷歌地图库加载阻止页面

我使用以下HTML标记加载GoogleMapsAPI:但是,在脚本被浏览器加载之前,它会阻止加载HTML中它下面的所有内容。有没有办法让这个加载成为非阻塞的? 最佳答案 此代码为您提供了一个延迟函数,它接受一个url和一个可选的回调。它异步加载您的脚本而不阻塞页面呈现。我已经设置了保护,因此它不会加载相同的scritp两次,因此您可以随意调用它多次。defer=(function(){varurls=[];returnfunction(url,callback){varinc;if(url&&urls.indexOf(url)===

javascript - 在 Firefox 中渲染内联 SVG

我有一个我正在开发的网站,我们允许创建形状,我们使用通过javascript构建的内联svg来创建形状。我遇到了一个奇怪的问题,svg在Chrome中正确呈现,但在Firefox中它切掉了一部分SVG。下面的代码是一个星号。在chrome中,这完美地显示出来。在Firefox中,我只能看到图像左上角的25%左右。我不确定是我们做错了什么还是Firefox有问题。有趣的是,如果我将星星变小(比如这个星星大小的1/4),它会在Firefox中完美呈现。感谢您的帮助! 最佳答案 您需要在中添加width和height属性元素。width=

Javascript 清理 : The most safe way to insert possible XSS html string

目前我正在将此方法与jQuery解决方案结合使用,以从可能的XSS攻击中清除字符串。sanitize:function(str){//returnhtmlentities(str,'ENT_QUOTES');return$('').text(str).html().replace(/"/gi,'"').replace(/'/gi,''');}但我觉得它不够安全。我错过了什么吗?我在这里尝试了phpjs项目中的htmlentities:http://phpjs.org/functions/htmlentities:425/但它有点错误并返回一些额外的特殊符号。也许是旧

javascript - 获取以屏幕像素为单位的旋转 SVG 元素的边界?

我正在尝试找到以屏幕像素为单位获取任意SVG元素边界框的最佳方法,以便正确覆盖HTML元素。到目前为止,我的方法是使用.getBBox()和.getCTM()检索对象的边界框和变换矩阵,然后将变换应用于边界框点如thisquestion的已接受答案中所述.//gettheelementvarel=$(selector)[0],pt=$(selector).closest('svg')[0].createSVGPoint();//gettheboundingboxandmatrixvarbbox=el.getBBox(),matrix=el.getScreenCTM();pt.x=bbo

javascript - 三.JS,改变子3D对象的世界位置

所以基本上我有一个Object3D组的子object3D,而子对象的[x,y,z]坐标是相对于父对象的对象空间显示的,我想在其中更改子对象的位置3D空间。所以首先我得到子对象相对于世界空间的位置。varwrld_pos=childobject.matrixWorld.multiplyVector3(newTHREE.Vector3);这将返回child在世界空间中的位置的三元素向量。现在我想设置我自己的位置。所以我创建了一个三元素向量。varnew_pos=THREE.Vector3();new_pos.x=1;new_pos.y=2;new_pos.z=3;childobject.m

javascript - d3.js 处理非 svg 浏览器

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。d3.js开发人员如何处理无法呈现svg的浏览器?我很好奇,因为InternetExplorer9、8、7等在世界大部分关键地区拥有巨大的多数市场份额,但似乎有如此活跃的d3.js社区,就好像InternetExplorer不存在一样。D3的目的是提供灵活的数据驱动图表,因此能够以直观的方式可视化复杂的主题。因此,瞄准最时尚的技术场景并假装其他人也从他们的